Synchronizing and sharing data between multiple endpoints may be accomplished in a variety of ways. Many synchronization implementations require specific and perhaps not widely-accepted data interchange formats. The same or different synchronization implementations may be relatively complex, for example, in terms of the rules that synchronization endpoints must follow, the data that must be provided and exchanged when synchronizing, and so on. Some synchronization implementations may require particular networking topologies such as, for example, a hub and spoke arrangement; others may operate in a wide variety of topologies including peer-to-peer arrangements, with one or more centralized nodes, and so on.